From: Jonas Dreßler Date: Mon, 4 Nov 2019 10:18:25 +0000 (+0100) Subject: panel: Don't chain up to non-existent parent vfunc X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~781^2^2~412 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=c1ae634174db37d00a0715fde69aa92dad3b9ff0;p=gnome-shell.git panel: Don't chain up to non-existent parent vfunc Just as with c35b4cede58142797b1f6b04a4e2e7eaa938234a, there's no default vfunc implemented by any parent which causes gjs to crash when trying to call it. So return EVENT_STOP if the key press successfully toggled the button, and EVENT_PROPAGATE otherwise. https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/830 --- diff --git a/js/ui/panel.js b/js/ui/panel.js index 69882894c..e8e45b0ab 100644 --- a/js/ui/panel.js +++ b/js/ui/panel.js @@ -480,15 +480,15 @@ class ActivitiesButton extends PanelMenu.Button { } vfunc_key_release_event(keyEvent) { - let ret = super.vfunc_key_release_event(keyEvent); - if (ret == Clutter.EVENT_PROPAGATE) { - let symbol = keyEvent.keyval; - if (symbol == Clutter.KEY_Return || symbol == Clutter.KEY_space) { - if (Main.overview.shouldToggleByCornerOrButton()) - Main.overview.toggle(); + let symbol = keyEvent.keyval; + if (symbol == Clutter.KEY_Return || symbol == Clutter.KEY_space) { + if (Main.overview.shouldToggleByCornerOrButton()) { + Main.overview.toggle(); + return Clutter.EVENT_STOP; } } - return ret; + + return Clutter.EVENT_PROPAGATE; } _xdndToggleOverview() {